/*
 * Copyright (c) 2025 EasyAdmin
 * All rights reserved.
 *
 * This file is part of the [EasAdmin] project.
 * Unauthorized copying of this file, via any medium, is strictly prohibited.
 * Proprietary and confidential.
 *
 * Author: EasyAdmin ( 1073602@qq.com )
 * Website: https://www.xhxiao.com
 */
package com.easy.module.system.service;

import com.easy.framework.database.service.IService;
import com.easy.module.system.entity.SysAppMenuAuth;
import com.easy.module.system.query.SysAppMenuAuthQuery;
import com.easy.module.system.query.SysAppMenuQuery;

import java.util.List;

/**
 * 应用菜单授权 Service接口
 *
 * @author EasyAdmin ( 1073602@qq.com )
 * @date 2025-08-20
 */
public interface ISysAppMenuAuthService extends IService<SysAppMenuAuth, SysAppMenuAuthQuery>
{


    /**
     * 查询APP能力菜单列表
     *
     * @param query
     * @return
     */
    List<SysAppMenuAuth> listMenuAuth(SysAppMenuAuthQuery query);

    /**
     * APP能力授权
     *
     * @return
     */
    Boolean auth(SysAppMenuAuth model);

    Boolean cancelAuth(List<Long> idList);

    List<Long> getMenuIdListByOrgId(Long orgId, List<Long> roleIdList, Long userId);
}